﻿using System;
using Ivory;

namespace CrystalCore
{
    public class CrystalCoreFrameworkError : Exception
    {
        public CrystalCoreFrameworkError(DefinedError error)
            : base(error.Message)
        {

        }
    }

    public static class CrystalCoreErrors
    {
        public static DefinedError NoGameWorld { get { return new DefinedError(20, "No Game World has been Defined", null); } }
        public static DefinedError NoGameCamera { get { return new DefinedError(21, "No Game Camera has been Defined", null); } }
        public static DefinedError NoGlobalDebugDrawer { get { return new DefinedError(22, "No Global Debug Render has been Defined", null); } }

        public static DefinedError NoGameFileSpecified { get { return new DefinedError(23, "No Level File has been Specified", null); } }
        public static DefinedError DynamicFactoryError { get { return new DefinedError(24, "There was an Error creating an instance of a cell in the Factory, contact someone in china", null); } }

        public static DefinedError CellRetreivalError { get { return new DefinedError(25, "Error retreiving Cell", null); } }
    }
}
